1. Field of the Invention
This invention relates to signal generation and, more particularly, to signal generation with automatic delays for alignment of signals from multiple sources.
2. Description of the Related Art
Signal generation is used in a wide variety of applications, including, for example, industrial testing and verification, product design, and control, among others. In one application of signal generation, a signal is generated according to waveform data, and provided as input or stimulus to a unit under test (UUT). Resulting output from the UUT may then be analyzed to characterize the UUT, e.g., for quality control, design feedback, etc. Generally, waveform generators are used to generate such signals.
Waveform generators may be used to produce one or more waveforms having defined characteristics. A waveform is a graphical representation of a signal, for example, an analog data signal or a digital data signal. The graphical representation may be a plot of amplitude (e.g., voltage) versus time. Therefore, a waveform representing an analog signal may comprise continuous and varying amplitude plots with respect to time (e.g., a sinusoidal wave), and a waveform representing a digital signal may comprise one or more pulses or discrete amplitude plots with respect to time (e.g., a binary pattern).
Waveform generators may be stand-alone systems or computer-based systems. In addition, waveform generators, also called signal sources, may be classified into two general types of waveform generators: arbitrary waveform generators and digital waveform generators. Arbitrary waveform generators are primarily used in analog and mixed-signal applications. Digital waveform generators, also called logic signal sources, include two classes of instruments: pattern generators and pulse generators. Logic signal sources are primarily used in digital system applications, for example, to provide stimulus signals, such as digital data patterns.
Waveform generators may generate waveforms by several methods. For example, waveform generators may create a waveform in response to a user input based on a plurality of waveform definitions. Additionally, waveform generators may create waveforms by receiving an existing signal and reproducing the signal. Furthermore, waveform generators may modify an existing signal. After creating, reproducing, and/or modifying a signal, waveform generators may output the one or more analog or digital signals.
Besides the main analog or digital outputs, waveform generators may also generate one or more ancillary digital signals called markers. The digital marker may be placed at an arbitrary location with respect to the waveform provided by the waveform generator, for example, at a specified sample number location. For example, arbitrary waveform generators may use sampling techniques to produce an analog waveform. Therefore, the analog waveform may comprise a plurality of samples or sample points. In this example, when the analog signal output corresponds to a sample point specified by the digital marker, the digital marker signal should ideally appear on the arbitrary waveform generator's digital marker input/output (I/O) terminal coincident with the sample point of the analog signal appearing on the analog I/O terminal.
Digital markers may be used in numerous applications. For example, an arbitrary waveform generator may send an analog signal to a UUT, and may trigger another device, such as a high-speed digitizer, with the digital marker. In this example, the digital marker, which may be relatively aligned with the first sample of the arbitrary waveform generator, may cause the digitizer to start digitizing the output of the UUT.
In some arbitrary waveform generators, a portion of the digital data may be used to store or specify digital markers. For example, if the system includes 16 bits of digital data, and only 14 of the digital bits are required to generate or define the analog signal, the remaining two bits may not be fed to the digital-to-analog converter (DAC); instead the extra bits may be used to generate the digital markers. In some cases, the lines including the two extra bits are connected straight to the I/O terminals to output the digital markers. In this example, the 14 bits may be fed through a DAC to create an analog signal and the analog signal may pass through other analog components, such as amplifiers and analog filters, before the analog signal is output. Therefore, the output of the analog signal may be delayed in time with respect to the output of the digital markers, since the DAC and the other components in the travel path associated with the analog signal delay the output of the analog signal.
The alignment of digital marker signals with data signals is difficult in practice. One possible solution is to manually account for the delay in the data signal when specifying the digital marker position. For example, in an arbitrary waveform generator, if it were determined that the digital marker is arriving at the I/O terminal 14 samples before the analog signal, and the desired digital marker position is at sample number 0 of the analog signal, the digital marker position could be specified as sample number 14 instead to achieve the desired result. However, this may be an inconvenience to the user and may still lead to unexpected, inaccurate results. For example, even if the user were able to empirically deal with an alignment problem for a particular group of settings, the user may face a different mismatch when the settings are changed, for example, by turning on an analog filter or changing an interpolation rate. The user may not notice the additional mismatch, since the user previously aligned the digital marker with the data signal.
In the past, when sampling rates were much lower, the delays between the output of digital markers and data signals were often tolerable. However, with current sample rates, the delays may pose a significant problem, and as sampling rates increase, for example, from 100 MHz (10 ns per sample) to 200 MHz (5 ns per sample) and higher, the delay issue will become even more important.
The same issues described above with regard to aligning digital marker signals with waveform signals also apply to the more general case of aligning waveforms or other signals from multiple sources.